#!/usr/bin/env sh
set -e

# 获取配置
GIT_SOURCE=$(jq -r '.git_source // empty' /data/options.json)
CUSTOM_COMPONENTS_DIR="/homeassistant/custom_components"
HACS_DIR="${CUSTOM_COMPONENTS_DIR}/hacs"
TEMP_DIR="/tmp/hacs"

# 创建目录
mkdir -p "${CUSTOM_COMPONENTS_DIR}"

# 清理已存在的安装
[ -d "${HACS_DIR}" ] && rm -rf "${HACS_DIR}"

# 下载和安装
mkdir -p "${TEMP_DIR}"
if git clone "${GIT_SOURCE}" "${TEMP_DIR}"; then
    if [ -d "${TEMP_DIR}/custom_components/hacs" ]; then
        mv "${TEMP_DIR}/custom_components/hacs" "${CUSTOM_COMPONENTS_DIR}/"
        echo "[INFO] HACS组件已成功安装到 ${HACS_DIR}"
        echo "[INFO] 安装完成，请手动重启Home Assistant以使更改生效"
    else
        echo "[ERROR] 无法找到HACS组件目录"
        exit 1
    fi
else
    echo "[ERROR] 克隆仓库失败"
    exit 1
fi

# 清理
rm -rf "${TEMP_DIR}"